home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Crosscountry USA Photo Safari
/
Crosscountry USA Photo Safari.iso
/
Data
/
cc_base
/
pak00_16bit_f.pk3
/
scenario_wizard.gl.p
< prev
next >
Wrap
Text File
|
2003-09-23
|
18KB
|
513 lines
{
ChildID = {
GuiAnimation("Plate") {
AnimationID = "image/scenario_wizard.pcx";
X = 0;
Y = 0;
Width = 640;
Height = 480;
},
GuiListbox("start_city") {
X = 36;
Y = 59;
Height = 97;
Width = 194;
FontID = "font/verdana_black_bold_14.tf";
ListFontID = "font/verdana_black_bold_12.tf";
ListHilightedColor = #7FAFFF;
TextID = Mangle(194/*"Starting City:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
ScriptID = Script {
@loaded {
GuiListBoxLoadCSVColumn(SELF,ResPropGetResID(ResByName("CSVData"), "city_id"),"name");
}
};
StrListID = StrList {
Size = 10240;
};
ChildID = {
GuiScrollBar ("sb") {
Kind = VERTICAL;
ChildID = {
GuiButton("thumb") {
StyleID = "gui/square/scrollbar/sb_thumb.gbs";
},
GuiButton("dec") {
StyleID = "gui/square/scrollbar/sb_uarrow.gbs";
},
GuiButton("inc") {
StyleID = "gui/square/scrollbar/sb_darrow.gbs";
}
};
}
};
},
GuiListbox("end_city") {
X = 269;
Y = 59;
Height = 97;
Width = 195;
FontID = "font/verdana_black_bold_14.tf";
ListFontID = "font/verdana_black_bold_12.tf";
ListHilightedColor = #7FAFFF;
TextID = Mangle(195/*"Ending City:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
ScriptID = Script {
@loaded {
GuiListBoxLoadCSVColumn(SELF,ResPropGetResID(ResByName("CSVData"), "city_id"),"name");
}
};
StrListID = StrList {
Size = 10240;
};
ChildID = {
GuiScrollBar ("sb") {
Kind = VERTICAL;
ChildID = {
GuiButton("thumb") {
StyleID = "gui/square/scrollbar/sb_thumb.gbs";
},
GuiButton("dec") {
StyleID = "gui/square/scrollbar/sb_uarrow.gbs";
},
GuiButton("inc") {
StyleID = "gui/square/scrollbar/sb_darrow.gbs";
}
};
}
};
},
GuiListbox("avail_commodity") {
X = 36;
Y = 186;
Height = 202;
Width = 196;
FontID = "font/verdana_black_bold_14.tf";
ListFontID = "font/verdana_black_bold_12.tf";
ListHilightedColor = #7FAFFF;
TextID = Mangle(196/*"Available Commodities:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
ScriptID = Script {
@loaded {
GuiListBoxLoadCSVColumn(SELF,ResPropGetResID(ResByName("CSVData"), "commodity_id"),"name");
}
};
StrListID = StrList {
Size = 10240;
};
ChildID = {
GuiScrollBar ("sb") {
Kind = VERTICAL;
ChildID = {
GuiButton("thumb") {
StyleID = "gui/square/scrollbar/sb_thumb.gbs";
},
GuiButton("dec") {
StyleID = "gui/square/scrollbar/sb_uarrow.gbs";
},
GuiButton("inc") {
StyleID = "gui/square/scrollbar/sb_darrow.gbs";
}
};
}
};
},
GuiListbox("picked_commodity") {
X = 380;
Y = 187;
Height = 98;
Width = 200;
FontID = "font/verdana_black_bold_14.tf";
ListFontID = "font/verdana_black_bold_12.tf";
ListHilightedColor = #7FAFFF;
TextID = Mangle(197/*"Selected Commodities:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
ScriptID = Script {
@loaded {
}
};
StrListID = StrList {
Size = 10240;
Duplicate = FALSE;
Indexed = TRUE;
};
ChildID = {
GuiScrollBar ("sb") {
Kind = VERTICAL;
ScriptID = script {
@update {
ResPropSetInt(SELF, "Value", ResPropGetInt(SELF, "MaxValue"));
}
}
ChildID = {
GuiButton("thumb") {
StyleID = "gui/square/scrollbar/sb_thumb.gbs";
},
GuiButton("dec") {
StyleID = "gui/square/scrollbar/sb_uarrow.gbs";
},
GuiButton("inc") {
StyleID = "gui/square/scrollbar/sb_darrow.gbs";
}
};
}
};
},
GuiTextInput("bonus") {
X = 382;
Y = 310;
Width = 190;
Height = 40;
WordWrap = FALSE;
InputDisabled = TRUE;
TextID = Mangle(198/*"Bonus Commodity:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
FontID = "font/verdana_black_bold_12.tf";
},
GuiTextInput("scenario_creator") {
X = 0;
Y = 30;
Width = 640;
Height = 40;
WordWrap = FALSE;
InputDisabled = TRUE;
TextID = Mangle(199/*"Scenario Creator"*/);
HorizontalAlign = CENTER;
VerticalAlign = ABOVE;
FontID = "font/verdana_black_bold_18.tf";
},
GuiTextInput("filename") {
X = 382;
Y = 363;
Width = 190;
Height = 40;
WordWrap = FALSE;
InsertCursorID = "gui/dash/tab/insert_cursor.pcx";
OverwriteCursorID = "gui/dash/tab/overwrite_cursor.pcx";
TextID = Mangle(200/*"File name:"*/);
HorizontalAlign = LEFT;
VerticalAlign = ABOVE;
FontID = "font/verdana_black_bold_12.tf";
},
GuiButton("add_arrow") {
X = 260;
Y = 200;
TextID = Mangle(201/*"Add ->"*/);
StyleID = "gui/dash/tab/button/tab.gbs";
FontID = "font/tab_button.tf";
Width = 80;
AutoSize = HEIGHT;
ScriptID = Script {
@activate {
str tmp;
int i;
resid Messages_id;
resid picked_id;
picked_id = GuiSiblingByName("picked_commodity");
Messages_id = GuiSiblingByName("messages");
/* clear message textbox */
ResPropSetStr(Messages_id,"InputText", "");
if (ResPropGetInt(picked_id, "Count") >= 12) {
ResPropSetStr(Messages_id,"InputText",MangleSIDToStr(202/*"You may only add up to 12 commodities."*/));
stop;
}
/* get selected commodity */
tmp = GuiListboxGetSelected(GuiSiblingByName("avail_commodity"));
GuiListBoxAppend(GuiSiblingByName("picked_commodity"),tmp);
ResParseEvent(GuiSiblingByName("picked_commodity/sb"), "@update");
}
};
},
GuiButton("Clear") {
X = 260;
Y = 358;
TextID = Mangle(204/*"Clear"*/);
StyleID = "gui/dash/tab/button/tab.gbs";
FontID = "font/tab_button.tf";
Width = 80;
AutoSize = HEIGHT;
ScriptID = Script {
@activate {
GuiListboxClear(GuiSiblingByName("picked_commodity"));
ResPropSetStr(GuiSiblingByName("bonus"),"InputText","");
/* clear message textbox */
ResPropSetStr(GuiSiblingByName("messages"),"InputText", "");
}
};
},
GuiButton("add_bonus_arrow") {
X = 260;
Y = 305;
TextID = Mangle(205/*"Bonus ->"*/);
StyleID = "gui/dash/tab/button/tab.gbs";
FontID = "font/tab_button.tf";
AutoSize = HEIGHT;
Width = 80;
ScriptID = Script {
@activate {
str tmp;
/* clear message textbox */
ResPropSetStr(GuiSiblingByName("messages"),"InputText", "");
tmp = GuiListboxGetSelected(GuiSiblingByName("avail_commodity"));
ResPropSetStr(GuiSiblingByName("bonus"),"InputText",tmp);
}
};
},
GuiTextInput("messages") {
X = 30;
Y = 400;
Width = 255;
Height = 60;
WordWrap = TRUE;
FontID = "font/verdana_black_bold_12.tf";
},
GuiButton("save") {
X = 515;
Y = 430;
TextID = Mangle(206/*"Save"*/);
StyleID = "gui/dash/tab/button/tab.gbs";
FontID = "font/tab_button.tf";
Width = 100;
AutoSize = HEIGHT;
ScriptID = Script {
@activate {
resid Player1Scenario;
resid Player2Scenario;
resid ScenarioGroup;
resid csv_data_id;
resid city_data_id;
resid state_data_id;
resid com_picked_id;
resid messages_id;
str com1;
str com2;
str com3;
str com4;
str com5;
str com6;
str com7;
str com8;
str com9;
str com10;
str com11;
str com12;
str start_city;
str end_city;
str start_state_name;
str end_state_name;
str bonus;
str filename;
str full_path;
int i;
/* get player view city information */
csv_data_id = ResByName("CSVData");
city_data_id = ResPropGetResID(csv_data_id, "city_id");
state_data_id = ResPropGetResID(csv_data_id, "state_id");
Player1Scenario = ResByName("Player1Scenario");
Player2Scenario = ResByName("Player2Scenario");
ScenarioGroup = ResByName("ScenarioGroup");
messages_id = GuiSiblingByName("messages");
com_picked_id = GuiSiblingByName("picked_commodity");
com1 = GuiListboxAt(com_picked_id, 0);
com2 = GuiListboxAt(com_picked_id, 1);
com3 = GuiListboxAt(com_picked_id, 2);
com4 = GuiListboxAt(com_picked_id, 3);
com5 = GuiListboxAt(com_picked_id, 4);
com6 = GuiListboxAt(com_picked_id, 5);
com7 = GuiListboxAt(com_picked_id, 6);
com8 = GuiListboxAt(com_picked_id, 7);
com9 = GuiListboxAt(com_picked_id, 8);
com10 = GuiListboxAt(com_picked_id, 9);
com11 = GuiListboxAt(com_picked_id, 10);
com12 = GuiListboxAt(com_picked_id, 11);
start_city = GuiListboxGetSelected(GuiSiblingByName("start_city"));
end_city = GuiListboxGetSelected(GuiSiblingByName("end_city"));
bonus = ResPropGetStr(GuiSiblingByName("bonus"),"InputText");
if ( StrExact(com1,"") ) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(207/*"You must select at least one commodity."*/));
stop;
}
if ( StrExact(start_city,"") ) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(208/*"You must select a starting city."*/));
stop;
}
if ( StrExact(end_city,"") ) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(209/*"You must select an ending city."*/));
stop;
}
/* SET ALL THE VALUES INTO SCENARIO OBJECTS */
ResPropSetInt(Player1Scenario,"scenario_commodity_number_of",
ResPropGetInt(com_picked_id, "Count"));
ResPropSetStr(Player1Scenario,"scenario_commodity_name_1",com1);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_2",com2);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_3",com3);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_4",com4);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_5",com5);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_6",com6);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_7",com7);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_8",com8);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_9",com9);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_10",com10);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_11",com11);
ResPropSetStr(Player1Scenario,"scenario_commodity_name_12",com12);
ResPropSetStr(Player1Scenario,"scenario_commodity_bonus",bonus);
ResPropSetStr(Player1Scenario,"scenario_start_city",start_city);
ResPropSetStr(Player1Scenario,"scenario_end_city",end_city);
/* get the start state */
start_state_name = CSVGetStr(state_data_id,"name", CSVSearch(state_data_id,"abbreviation", CSVGetStr(city_data_id,"state", CSVSearch(city_data_id,"name",start_city))));
end_state_name = CSVGetStr(state_data_id,"name", CSVSearch(state_data_id,"abbreviation", CSVGetStr(city_data_id,"state", CSVSearch(city_data_id,"name",end_city))));
ResPropSetStr(Player1Scenario,"scenario_start_state", start_state_name);
ResPropSetStr(Player1Scenario,"scenario_end_state", end_state_name);
ResPropSetInt(Player2Scenario,"scenario_commodity_number_of",
ResPropGetInt(com_picked_id, "Count"));
ResPropSetStr(Player2Scenario,"scenario_commodity_name_1",com1);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_2",com2);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_3",com3);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_4",com4);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_5",com5);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_6",com6);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_7",com7);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_8",com8);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_9",com9);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_10",com10);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_11",com11);
ResPropSetStr(Player2Scenario,"scenario_commodity_name_12",com12);
ResPropSetStr(Player2Scenario,"scenario_commodity_bonus",bonus);
ResPropSetStr(Player2Scenario,"scenario_start_city",start_city);
ResPropSetStr(Player2Scenario,"scenario_end_city",end_city);
ResPropSetStr(Player2Scenario,"scenario_start_state", start_state_name);
ResPropSetStr(Player2Scenario,"scenario_end_state", end_state_name);
/* check if bonus commodity and regular are duplicate */
i = 0;
while (i<ResPropGetInt(com_picked_id, "Count")) {
if (StrExact(bonus, GuiListboxAt(com_picked_id,i))) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(210/*"You cannot have a duplicate bonus commodity and selected commodity."*/));
stop;
}
i+=1;
}
/* check if start city and end city r the same */
if ( StrExact(start_city, end_city)) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(211/*"Starting City and Ending City cannot be the same."*/));
stop;
}
if ( CSVGetInt(city_data_id,"can_start_in",CSVSearch(city_data_id,"name",start_city)) == 0 ) {
ResPropSetStr(messages_id,"InputText", StrFormatStr(MangleSIDToStr(212/*"You cannot start in %s."*/),start_city));
stop;
}
if ( CSVGetInt(city_data_id,"can_start_in",CSVSearch(city_data_id,"name",end_city)) == 0 ) {
ResPropSetStr(messages_id,"InputText", StrFormatStr(MangleSIDToStr(213/*"You cannot end in %s."*/), end_city));
stop;
}
/* get the filename */
filename = ResPropGetStr(GuiSiblingByName("filename"),"InputText");
/* check if the filename is empty */
if (StrExact("",filename)) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(214/*"You must type a file name."*/));
stop;
}
/* check that the length of the filename is not too long */
if (StrLen(filename) >= 27) {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(215/*"The file name you have chosen is too long."*/));
stop;
}
/* form the full path */
if (StrIn(filename, ".scn")) {
full_path = StrFormatStr("%s%s", CVarGetStr("SavedScenarioDir"),filename);
} else {
filename = StrFormatStr("%s.scn", filename);
full_path = StrFormatStr("%s%s", CVarGetStr("SavedScenarioDir"),filename);
}
/* save the game */
if (ResSaveAs(ScenarioGroup, full_path)) {
ResPropSetStr(messages_id,"InputText",StrFormatStr(MangleSIDToStr(216/*"Your scenario has been saved to '%s'."*/), filename));
} else {
ResPropSetStr(messages_id,"InputText",MangleSIDToStr(217/*"Could not save scenario. Check save scenario path in options menu."*/));
}
}
};
},
GuiButton("main_menu") {
X = 384;
Y = 430;
TextID = Mangle(218/*"Main Menu"*/);
StyleID = "gui/dash/tab/button/tab.gbs";
FontID = "font/tab_button.tf";
Width = 100;
AutoSize = HEIGHT;
ScriptID = Script {
@activate {
release("floor");
mark("floor");
ResByName("splash_screen.gl");
}
};
}
};
}